"""
    查询合同表（tb_contract）前五条信息
    	select * from tb_contract limit 5;
"""
# 导包
import pymysql
import traceback

# 定义两个变量，用来接收数据库连接对象和游标对象
con = None
cur = None

try:
    # 创建数据库连接对象
    con = pymysql.connect(host="211.103.136.244", user="student", password="KDTX_student_202304", port=7068,
                          database="huike", charset="utf8")
    # 创建游标对象
    cur = con.cursor()
    # 游标对象中执行SQL语句
    sql_str = "select * from tb_contract limit 5;"
    cur.execute(sql_str)
    # 在游标对象中，获取执行结果
    # 拿取一条数据
    print("当前行号：{}".format(cur.rownumber))
    print("拿取一条：{}".format(cur.fetchone()))
    print("拿取一条数据之后，当前行号：{}".format(cur.rownumber))
    # 代码出现报错
    data_list = []
    data_list[1]

    cur.rownumber = 0
    # 拿取三条数据
    print("拿取三条：{}".format(cur.fetchmany(4)))
    # 拿取全部数据
    cur.rownumber = 0
    print("全部拿取：{}".format(cur.fetchall()))
except:
    # 报错信息收集
    traceback.print_exc()
finally:
    # 如果创建游标对象(con变量不为空)，关闭游标对象
    if cur is not None:
        cur.close()
    # 如果创建游标对象，关闭数据库连接对象
    if con is not None:
        con.close()
